package plus;
/**
 * BIF stands for Built.In.Function.
 * 
 * @author me
 *
 */
abstract class BIF implements Function {
	final S_Function arrow;
	final Symbol<Function> sym;
	BIF(String name, Type[] domain, Type range) {
		this.sym = new Symbol<Function>(name, 0, this);
		arrow = new S_Function(domain, range);
	}
	@Override public int arity() { return arrow.domain.length; }
	@Override public S_Function arrow() { return arrow; }
	
}
